using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using QLKS.HeThongDAO;
using QLKS.HeThongBUS;

namespace QLKS
{
    public partial class BaoCaoDoanhThu : DevComponents.DotNetBar.Office2007Form
    {
        public BaoCaoDoanhThu()
        {
            InitializeComponent();
        }

        private void crystalReportViewer1_Load(object sender, EventArgs e)
        {
            
            //for (i = 0; i < dong; i++)
            //{   
            //    DataRow dr = dsp.Rows[i];
            //    r = t.NewRow();
            //    r["maphong"] = dr["MaPhong"].ToString();
            //    DataTable dt = BC_BUS.Doanhthu(dr["MaPhong"].ToString());
            //    int dem = dt.Rows.Count;
            //    doanhthu = 0;
            //    for (int j = 0; j < dem; j++)
            //    {
            //        DataRow dr1 = dt.Rows[j];
            //        doanhthu += Int32.Parse(dr1["ThanhTien"].ToString());
            //    }
            //    tongdt += doanhthu;
            //    r["Doanhthu"] = doanhthu;
            //    t.Rows.Add(r);
            // }




            //for (i = 0; i < dong; i++)
            //{
            //    r = t.NewRow();
            //    DataRow dr2 = ds.Tables[1].Rows[i];
            //    double s = (Double.Parse(dr2["Doanhthu"].ToString()) / tongdt)*100;
            //    r["Tyle"] = s ;
                
            //    t.Rows.Add(r);
            //}
            
        }

        private void ckngay_CheckedChanged(object sender, EventArgs e)
        {
            if (ckngay.Checked == true)
            {
                dateTimeInput1.Enabled = true;
            }
            else if (ckngay.Checked == false)
            {
                dateTimeInput1.Enabled = false;
            }
        }

        private void ckthang_CheckedChanged(object sender, EventArgs e)
        {
            if (ckthang.Checked == true)
            {
                cbbthang.Enabled = true;
            }
            else if (ckthang.Checked == false)
            {
                cbbthang.Enabled = false;
            }
        }

        private void cknam_CheckedChanged(object sender, EventArgs e)
        {
            if (cknam.Checked == true)
            {
                cbbnam.Enabled = true;
            }
            else if (cknam.Checked == false)
            {
                cbbnam.Enabled = false;
            }
        }


        #region Bao cao
        string dk1;
        string dk2;
        string dk3;
        string ngaythang;

        private void buttonX1_Click(object sender, EventArgs e)
        {
            if (dateTimeInput1.Value != null && ckngay.Checked == true)
            {
                dk1 = " And CTThuePhong.NgayTraPhong LIKE '" + dateTimeInput1.Value.ToShortDateString() + "'";
                ngaythang = " Ngày : " + dateTimeInput1.Value.ToShortDateString();
            }
            if (dateTimeInput1.Value == null || ckngay.Checked == false)
            {
                dk1 = "";
            }
            if (ckthang.Checked == true)
            {
                dk2 = " And Month(CTThuePhong.NgayTraPhong) = '" + cbbthang.SelectedItem + "'";
                ngaythang = " Tháng " + cbbthang.SelectedItem;
            }
            if (ckthang.Checked == false)
            {
                dk2 = "";
            }
            if (cknam.Checked == true)
            {
                dk3 = " And Year(CTThuePhong.NgayTraPhong) = '" + cbbnam.SelectedItem + "'";
                ngaythang += " Năm " + cbbnam.SelectedItem;
            }
            if (cknam.Checked == false)
            {
                dk3 = "";
                ngaythang += " Năm " + DateTime.Now.Year.ToString();
            }
            //DataTable dt = HD_BUS.TraCuuHoaDon(dk1, dk2, dk3);
            //grvdsp.DataSource = dt;
            //if (dt.Rows.Count == 0)
            //{
            //    MessageBoxEx.Show("Không tìm thấy dữ liệu theo yêu cầu", "Thông báo");
            //}
            doanhthu ds = new doanhthu();
            DataTable t = ds.Tables.Add("Items");
            t.Columns.Add("maphong", Type.GetType("System.String"));
            t.Columns.Add("doanhthu", Type.GetType("System.Int32"));
            t.Columns.Add("tyle", Type.GetType("System.Double"));
            t.Columns.Add("ngaythang", Type.GetType("System.String"));
            DataTable dsp = BC_BUS.DSPhong();
            int dong = dsp.Rows.Count;

            double doanhthu;
            DataRow r;
            double tongdt = 0;
            int i = 0;



            for (i = 0; i < dong; i++)
            {
                DataRow dr = dsp.Rows[i];

                DataTable dt = BC_BUS.Doanhthu(dr["MaPhong"].ToString(),dk1,dk2,dk3);
                int dem = dt.Rows.Count;
                doanhthu = 0;
                for (int j = 0; j < dem; j++)
                {
                    DataRow dr1 = dt.Rows[j];
                    doanhthu += Int32.Parse(dr1["ThanhTien"].ToString());
                }
                tongdt += doanhthu;

            }



            for (i = 0; i < dong; i++)
            {
                DataRow dr = dsp.Rows[i];
                r = t.NewRow();
                r["maphong"] = dr["MaPhong"].ToString();
                DataTable dt = BC_BUS.Doanhthu(dr["MaPhong"].ToString(), dk1, dk2, dk3);

                int dem = dt.Rows.Count;
                doanhthu = 0;
                for (int j = 0; j < dem; j++)
                {
                    DataRow dr1 = dt.Rows[j];
                    doanhthu += Int32.Parse(dr1["ThanhTien"].ToString());
                }

                r["Doanhthu"] = doanhthu;
                if (doanhthu == 0) 
                {
                    double s = 0;
                    r["Tyle"] = s;
                }
                else
                {
                    double s = (doanhthu / tongdt) * 100;
                    r["Tyle"] = s;
                }
                
                r["ngaythang"] = ngaythang;
                t.Rows.Add(r);
            }


            BCDoanhThu objRpt = new BCDoanhThu();
            objRpt.SetDataSource(ds.Tables[1]);
            
            // objRpt.Parameter_thang = thang;
            this.crystalReportViewer1.ReportSource = objRpt;
            this.crystalReportViewer1.Refresh(); 


        }

        #endregion

        private void BaoCaoDoanhThu_Load(object sender, EventArgs e)
        {
            for (int i = 1; i <= 12; i++)
            {
                cbbthang.Items.Add(i);
            }
            int namht = Int32.Parse(DateTime.Now.Year.ToString());
            int nambd = 2009;
            for (int i = nambd; i <= namht; i++)
            {
                cbbnam.Items.Add(i);
            }
        }

        
    }
}